package com.szrt.java.day20170103.demo10;


import java.math.BigDecimal;

import org.junit.Test;

/**
 * 
 * 
 * 1:异常的整体体系结构  异常家谱
 * 
 * 
 * @author zsrt
 *
 */
public class ExceptionTest {
	
	@Test
	public void xx(){
		
		//运行时异常   运行时异常在编译的时候可以不进行显示的处理
		int xx = 10/0;
		
		
		//编译异常   io 你只要看懂我保存的时候回报错。  编译异常一定要在编译的时候进行显示的处理
		//InputStream is = new FileInputStream("aa.txt");
		
		
		
		System.out.println(xx);
		
	}
	
	
	
	@Test
	public void arithmeticExceptionTest() throws Exception {
		
		int a=0;
		try {
			//运行时异常
			a = 20/0;
		} catch (Exception e) {
			System.out.println("一个平底锅过去把灰太狼打死...");
			//e.printStackTrace();
		}
		
		
		System.out.println(a);
		
	}
	
	@Test
	public void testName() throws Exception {
		double i = 1.1;
		double j = 0.5;
		System.out.println(i-j);
		//Java中的简单浮点数类型float和double不能够进行运算。
		//在商业计算中我们要用 java.math.BigDecimal
		BigDecimal a = new BigDecimal(1.1);
		BigDecimal b = new BigDecimal(0.5);
		BigDecimal bigResult = new BigDecimal(0);
		bigResult = a.multiply(b);
		System.out.println(bigResult.toString());
		System.out.println(bigResult.doubleValue());  
	}
	
	
	
	
	

}
